package org.zhangyp.n04design.n01SingletonPattern;

/**
 * 枚举方式创建单例-最佳实践方式
 * 创建枚举默认是线程安全的，而且还能防止反序列化导致重新创建新的对象，即使使用反射机制也无法多次实例化一个枚举量
 * 且它实现简单，在面对复杂的序列化或者反射攻击的时候，能够防止实例化多次
 */
public enum EnumSingleton {
    SINGLETON;

    private EnumSingleton() {
    }

    public void doMethod() {
        System.out.println("做了一些事情");
    }
}
